<?php
/**
 * 适配器模式（对象）
 *
 * 当旧对象很重要，但是旧对象不适应新环境的时候，使用这种模式
 *
 *
 * 
 */


//用户希望得到的类的接口
interface ITarget{
	//期望得到的方法
	public function Request();
}
//需要适应的类
class Adaptee{
	//不期望的方法
	public function SpecificRequest(){
		echo "specific request\n";
	}
}
//提供一个对象适配器
class Adapter extends Adaptee implements ITarget{
	//适配方法
	public function Request(){
		$this->SpecificRequest();
	}
}

//最终想要实现的方法
$target = new Adapter;
$target->Request();